{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T09:28:55.211471Z",
     "start_time": "2019-02-27T09:28:17.474292Z"
    }
   },
   "outputs": [],
   "source": [
    "# 引入必要库\n",
    "import time\n",
    "import requests\n",
    "from bs4 import BeautifulSoup\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "# windows和mac设置中文字体的方式不一样，这里需注意根据实际情况调整\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']  #Windows\n",
    "# plt.rcParams['font.sans-serif'] = ['Songti SC']  #Mac\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "%matplotlib inline\n",
    "import matplotlib\n",
    "from pyecharts.charts import Line, Radar\n",
    "from pyecharts import options as opts"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T09:29:04.788045Z",
     "start_time": "2019-02-27T09:29:04.783058Z"
    }
   },
   "outputs": [],
   "source": [
    "# 函数默认返回北京市2022年1月到12月的url，可以自行调整\n",
    "def get_url(city='beijing'):\n",
    "    '''\n",
    "    city为城市拼写的字符串，year为年份+月份\n",
    "    '''\n",
    "    for time in range(202201,202213):\n",
    "        url = \"http://lishi.tianqi.com/{}/{}.html\".format(city,time)\n",
    "        yield url"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T09:29:06.694496Z",
     "start_time": "2019-02-27T09:29:06.685493Z"
    }
   },
   "outputs": [],
   "source": [
    "def get_datas(urls = get_url()):\n",
    "    header = {\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36\"}\n",
    "    for url in urls:\n",
    "        while True:\n",
    "            print(url)\n",
    "            html = requests.get(url = url, headers = header)\n",
    "            soup = BeautifulSoup(html.content, 'html.parser')\n",
    "            date = soup.select(\"div.tian_three > ul > li > div:nth-of-type(1)\")\n",
    "            max_temp = soup.select(\"div.tian_three > ul > li > div:nth-of-type(2)\")\n",
    "            min_temp = soup.select(\"div.tian_three > ul > li > div:nth-of-type(3)\")\n",
    "            weather = soup.select(\"div.tian_three > ul > li > div:nth-of-type(4)\")\n",
    "            wind_direction = soup.select(\"div.tian_three > ul > li > div:nth-of-type(5)\")\n",
    "            date = [x.text.split()[0] for x in date]\n",
    "            max_temp = [x.text[:-1] for x in max_temp[1:]]\n",
    "            min_temp = [x.text[:-1] for x in min_temp[1:]]\n",
    "            weather = [x.text for x in weather[1:]]\n",
    "            wind_direction = [x.text.split()[0] for x in wind_direction[1:]]\n",
    "            if len(date) > 0:  # 如果抓取到数据就跳出循环，否则再次抓取\n",
    "                break\n",
    "        yield pd.DataFrame([date,max_temp,min_temp,weather,wind_direction]).T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T09:29:07.735489Z",
     "start_time": "2019-02-27T09:29:07.730503Z"
    }
   },
   "outputs": [],
   "source": [
    "# 获取数据方法\n",
    "def get_result():\n",
    "    result = pd.DataFrame()\n",
    "    for data in get_datas():  \n",
    "        result = result.append(data)\n",
    "    return result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:10:22.802259Z",
     "start_time": "2019-02-27T13:10:19.052147Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "http://lishi.tianqi.com/beijing/202201.html\n",
      "http://lishi.tianqi.com/beijing/202202.html\n",
      "http://lishi.tianqi.com/beijing/202203.html\n",
      "http://lishi.tianqi.com/beijing/202204.html\n",
      "http://lishi.tianqi.com/beijing/202205.html\n",
      "http://lishi.tianqi.com/beijing/202206.html\n",
      "http://lishi.tianqi.com/beijing/202207.html\n",
      "http://lishi.tianqi.com/beijing/202208.html\n",
      "http://lishi.tianqi.com/beijing/202209.html\n",
      "http://lishi.tianqi.com/beijing/202210.html\n",
      "http://lishi.tianqi.com/beijing/202211.html\n",
      "http://lishi.tianqi.com/beijing/202212.html\n",
      "空数据有 4\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2022-01-01</td>\n",
       "      <td>2</td>\n",
       "      <td>-7</td>\n",
       "      <td>多云</td>\n",
       "      <td>南风</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2022-01-02</td>\n",
       "      <td>6</td>\n",
       "      <td>-7</td>\n",
       "      <td>晴</td>\n",
       "      <td>东北风</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2022-01-03</td>\n",
       "      <td>3</td>\n",
       "      <td>-6</td>\n",
       "      <td>晴</td>\n",
       "      <td>西南风</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2022-01-04</td>\n",
       "      <td>2</td>\n",
       "      <td>-6</td>\n",
       "      <td>晴</td>\n",
       "      <td>西风</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2022-01-05</td>\n",
       "      <td>6</td>\n",
       "      <td>-7</td>\n",
       "      <td>晴</td>\n",
       "      <td>东北风</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            0  1   2   3    4\n",
       "0  2022-01-01  2  -7  多云   南风\n",
       "1  2022-01-02  6  -7   晴  东北风\n",
       "2  2022-01-03  3  -6   晴  西南风\n",
       "3  2022-01-04  2  -6   晴   西风\n",
       "4  2022-01-05  6  -7   晴  东北风"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 执行方法，获取数据\n",
    "result = get_result()\n",
    "\n",
    "# 是否存在非空数据\n",
    "print('空数据有',result.isnull().any().sum())\n",
    "\n",
    "# 简单查看下爬取到的数据\n",
    "result.head(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:10:30.994176Z",
     "start_time": "2019-02-27T13:10:30.266305Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 365 entries, 0 to 30\n",
      "Data columns (total 6 columns):\n",
      " #   Column  Non-Null Count  Dtype         \n",
      "---  ------  --------------  -----         \n",
      " 0   日期      365 non-null    datetime64[ns]\n",
      " 1   最高温度    353 non-null    float64       \n",
      " 2   最低温度    353 non-null    float64       \n",
      " 3   天气状况    353 non-null    object        \n",
      " 4   风向      353 non-null    object        \n",
      " 5   平均温度    353 non-null    float64       \n",
      "dtypes: datetime64[ns](1), float64(3), object(2)\n",
      "memory usage: 20.0+ KB\n"
     ]
    }
   ],
   "source": [
    "# 改一下列名\n",
    "result.columns = [\"日期\",\"最高温度\",\"最低温度\",\"天气状况\",\"风向\"]\n",
    "# 由于提取的默认是字符串，所以这里更改一下数据类型\n",
    "result['日期'] = pd.to_datetime(result['日期'])\n",
    "result[\"最高温度\"] = pd.to_numeric(result['最高温度'])\n",
    "result[\"最低温度\"] = pd.to_numeric(result['最低温度'])\n",
    "result[\"平均温度\"] = (result['最高温度'] + result['最低温度'])/2\n",
    "# 看一下更改后的数据状况\n",
    "result.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:10:33.896196Z",
     "start_time": "2019-02-27T13:10:32.746386Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='平均温度'>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 温度的分布\n",
    "sns.distplot(result['平均温度'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:53:11.696284Z",
     "start_time": "2019-02-27T13:53:11.456940Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='天气状况', ylabel='count'>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 天气状况分布\n",
    "sns.countplot(result['天气状况'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:53:04.864402Z",
     "start_time": "2019-02-27T13:53:04.825518Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<script>\n",
       "    require.config({\n",
       "        paths: {\n",
       "            'echarts':'https://assets.pyecharts.org/assets/v5/echarts.min'\n",
       "        }\n",
       "    });\n",
       "</script>\n",
       "\n",
       "        <div id=\"910b237ba34946eeb4f9a35b8dcf5b87\" style=\"width:900px; height:500px;\"></div>\n",
       "\n",
       "<script>\n",
       "        require(['echarts'], function(echarts) {\n",
       "                var chart_910b237ba34946eeb4f9a35b8dcf5b87 = echarts.init(\n",
       "                    document.getElementById('910b237ba34946eeb4f9a35b8dcf5b87'), 'white', {renderer: 'canvas'});\n",
       "                var option_910b237ba34946eeb4f9a35b8dcf5b87 = {\n",
       "    \"animation\": true,\n",
       "    \"animationThreshold\": 2000,\n",
       "    \"animationDuration\": 1000,\n",
       "    \"animationEasing\": \"cubicOut\",\n",
       "    \"animationDelay\": 0,\n",
       "    \"animationDurationUpdate\": 300,\n",
       "    \"animationEasingUpdate\": \"cubicOut\",\n",
       "    \"animationDelayUpdate\": 0,\n",
       "    \"aria\": {\n",
       "        \"enabled\": false\n",
       "    },\n",
       "    \"color\": [\n",
       "        \"#5470c6\",\n",
       "        \"#91cc75\",\n",
       "        \"#fac858\",\n",
       "        \"#ee6666\",\n",
       "        \"#73c0de\",\n",
       "        \"#3ba272\",\n",
       "        \"#fc8452\",\n",
       "        \"#9a60b4\",\n",
       "        \"#ea7ccc\"\n",
       "    ],\n",
       "    \"series\": [\n",
       "        {\n",
       "            \"type\": \"line\",\n",
       "            \"name\": \"\\u964d\\u6c34\\u5929\\u6570\",\n",
       "            \"connectNulls\": false,\n",
       "            \"xAxisIndex\": 0,\n",
       "            \"symbolSize\": 4,\n",
       "            \"showSymbol\": true,\n",
       "            \"smooth\": false,\n",
       "            \"clip\": true,\n",
       "            \"step\": false,\n",
       "            \"data\": [\n",
       "                [\n",
       "                    \"1\\u6708\\u4efd\",\n",
       "                    2\n",
       "                ],\n",
       "                [\n",
       "                    \"2\\u6708\\u4efd\",\n",
       "                    2\n",
       "                ],\n",
       "                [\n",
       "                    \"3\\u6708\\u4efd\",\n",
       "                    5\n",
       "                ],\n",
       "                [\n",
       "                    \"4\\u6708\\u4efd\",\n",
       "                    2\n",
       "                ],\n",
       "                [\n",
       "                    \"5\\u6708\\u4efd\",\n",
       "                    2\n",
       "                ],\n",
       "                [\n",
       "                    \"6\\u6708\\u4efd\",\n",
       "                    4\n",
       "                ],\n",
       "                [\n",
       "                    \"7\\u6708\\u4efd\",\n",
       "                    6\n",
       "                ],\n",
       "                [\n",
       "                    \"8\\u6708\\u4efd\",\n",
       "                    4\n",
       "                ],\n",
       "                [\n",
       "                    \"9\\u6708\\u4efd\",\n",
       "                    1\n",
       "                ],\n",
       "                [\n",
       "                    \"10\\u6708\\u4efd\",\n",
       "                    3\n",
       "                ],\n",
       "                [\n",
       "                    \"11\\u6708\\u4efd\",\n",
       "                    2\n",
       "                ],\n",
       "                [\n",
       "                    \"12\\u6708\\u4efd\",\n",
       "                    1\n",
       "                ]\n",
       "            ],\n",
       "            \"hoverAnimation\": true,\n",
       "            \"label\": {\n",
       "                \"show\": true,\n",
       "                \"margin\": 8\n",
       "            },\n",
       "            \"logBase\": 10,\n",
       "            \"seriesLayoutBy\": \"column\",\n",
       "            \"lineStyle\": {\n",
       "                \"show\": true,\n",
       "                \"width\": 1,\n",
       "                \"opacity\": 1,\n",
       "                \"curveness\": 0,\n",
       "                \"type\": \"solid\"\n",
       "            },\n",
       "            \"areaStyle\": {\n",
       "                \"opacity\": 0\n",
       "            },\n",
       "            \"zlevel\": 0,\n",
       "            \"z\": 0\n",
       "        },\n",
       "        {\n",
       "            \"type\": \"line\",\n",
       "            \"name\": \"\\u672a\\u964d\\u6c34\\u5929\\u6570\",\n",
       "            \"connectNulls\": false,\n",
       "            \"xAxisIndex\": 0,\n",
       "            \"symbolSize\": 4,\n",
       "            \"showSymbol\": true,\n",
       "            \"smooth\": false,\n",
       "            \"clip\": true,\n",
       "            \"step\": false,\n",
       "            \"data\": [\n",
       "                [\n",
       "                    \"1\\u6708\\u4efd\",\n",
       "                    29\n",
       "                ],\n",
       "                [\n",
       "                    \"2\\u6708\\u4efd\",\n",
       "                    26\n",
       "                ],\n",
       "                [\n",
       "                    \"3\\u6708\\u4efd\",\n",
       "                    26\n",
       "                ],\n",
       "                [\n",
       "                    \"4\\u6708\\u4efd\",\n",
       "                    28\n",
       "                ],\n",
       "                [\n",
       "                    \"5\\u6708\\u4efd\",\n",
       "                    29\n",
       "                ],\n",
       "                [\n",
       "                    \"6\\u6708\\u4efd\",\n",
       "                    26\n",
       "                ],\n",
       "                [\n",
       "                    \"7\\u6708\\u4efd\",\n",
       "                    25\n",
       "                ],\n",
       "                [\n",
       "                    \"8\\u6708\\u4efd\",\n",
       "                    27\n",
       "                ],\n",
       "                [\n",
       "                    \"9\\u6708\\u4efd\",\n",
       "                    29\n",
       "                ],\n",
       "                [\n",
       "                    \"10\\u6708\\u4efd\",\n",
       "                    28\n",
       "                ],\n",
       "                [\n",
       "                    \"11\\u6708\\u4efd\",\n",
       "                    28\n",
       "                ],\n",
       "                [\n",
       "                    \"12\\u6708\\u4efd\",\n",
       "                    30\n",
       "                ]\n",
       "            ],\n",
       "            \"hoverAnimation\": true,\n",
       "            \"label\": {\n",
       "                \"show\": true,\n",
       "                \"margin\": 8\n",
       "            },\n",
       "            \"logBase\": 10,\n",
       "            \"seriesLayoutBy\": \"column\",\n",
       "            \"lineStyle\": {\n",
       "                \"show\": true,\n",
       "                \"width\": 1,\n",
       "                \"opacity\": 1,\n",
       "                \"curveness\": 0,\n",
       "                \"type\": \"solid\"\n",
       "            },\n",
       "            \"areaStyle\": {\n",
       "                \"opacity\": 0\n",
       "            },\n",
       "            \"zlevel\": 0,\n",
       "            \"z\": 0\n",
       "        }\n",
       "    ],\n",
       "    \"legend\": [\n",
       "        {\n",
       "            \"data\": [\n",
       "                \"\\u964d\\u6c34\\u5929\\u6570\",\n",
       "                \"\\u672a\\u964d\\u6c34\\u5929\\u6570\"\n",
       "            ],\n",
       "            \"selected\": {},\n",
       "            \"show\": true,\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10,\n",
       "            \"itemWidth\": 25,\n",
       "            \"itemHeight\": 14,\n",
       "            \"backgroundColor\": \"transparent\",\n",
       "            \"borderColor\": \"#ccc\",\n",
       "            \"borderWidth\": 1,\n",
       "            \"borderRadius\": 0,\n",
       "            \"pageButtonItemGap\": 5,\n",
       "            \"pageButtonPosition\": \"end\",\n",
       "            \"pageFormatter\": \"{current}/{total}\",\n",
       "            \"pageIconColor\": \"#2f4554\",\n",
       "            \"pageIconInactiveColor\": \"#aaa\",\n",
       "            \"pageIconSize\": 15,\n",
       "            \"animationDurationUpdate\": 800,\n",
       "            \"selector\": false,\n",
       "            \"selectorPosition\": \"auto\",\n",
       "            \"selectorItemGap\": 7,\n",
       "            \"selectorButtonGap\": 10\n",
       "        }\n",
       "    ],\n",
       "    \"tooltip\": {\n",
       "        \"show\": true,\n",
       "        \"trigger\": \"item\",\n",
       "        \"triggerOn\": \"mousemove|click\",\n",
       "        \"axisPointer\": {\n",
       "            \"type\": \"line\"\n",
       "        },\n",
       "        \"showContent\": true,\n",
       "        \"alwaysShowContent\": false,\n",
       "        \"showDelay\": 0,\n",
       "        \"hideDelay\": 100,\n",
       "        \"enterable\": false,\n",
       "        \"confine\": false,\n",
       "        \"appendToBody\": false,\n",
       "        \"transitionDuration\": 0.4,\n",
       "        \"textStyle\": {\n",
       "            \"fontSize\": 14\n",
       "        },\n",
       "        \"borderWidth\": 0,\n",
       "        \"padding\": 5,\n",
       "        \"order\": \"seriesAsc\"\n",
       "    },\n",
       "    \"xAxis\": [\n",
       "        {\n",
       "            \"show\": true,\n",
       "            \"scale\": false,\n",
       "            \"nameLocation\": \"end\",\n",
       "            \"nameGap\": 15,\n",
       "            \"gridIndex\": 0,\n",
       "            \"inverse\": false,\n",
       "            \"offset\": 0,\n",
       "            \"splitNumber\": 5,\n",
       "            \"minInterval\": 0,\n",
       "            \"splitLine\": {\n",
       "                \"show\": true,\n",
       "                \"lineStyle\": {\n",
       "                    \"show\": true,\n",
       "                    \"width\": 1,\n",
       "                    \"opacity\": 1,\n",
       "                    \"curveness\": 0,\n",
       "                    \"type\": \"solid\"\n",
       "                }\n",
       "            },\n",
       "            \"data\": [\n",
       "                \"1\\u6708\\u4efd\",\n",
       "                \"2\\u6708\\u4efd\",\n",
       "                \"3\\u6708\\u4efd\",\n",
       "                \"4\\u6708\\u4efd\",\n",
       "                \"5\\u6708\\u4efd\",\n",
       "                \"6\\u6708\\u4efd\",\n",
       "                \"7\\u6708\\u4efd\",\n",
       "                \"8\\u6708\\u4efd\",\n",
       "                \"9\\u6708\\u4efd\",\n",
       "                \"10\\u6708\\u4efd\",\n",
       "                \"11\\u6708\\u4efd\",\n",
       "                \"12\\u6708\\u4efd\"\n",
       "            ]\n",
       "        }\n",
       "    ],\n",
       "    \"yAxis\": [\n",
       "        {\n",
       "            \"show\": true,\n",
       "            \"scale\": false,\n",
       "            \"nameLocation\": \"end\",\n",
       "            \"nameGap\": 15,\n",
       "            \"gridIndex\": 0,\n",
       "            \"inverse\": false,\n",
       "            \"offset\": 0,\n",
       "            \"splitNumber\": 5,\n",
       "            \"minInterval\": 0,\n",
       "            \"splitLine\": {\n",
       "                \"show\": true,\n",
       "                \"lineStyle\": {\n",
       "                    \"show\": true,\n",
       "                    \"width\": 1,\n",
       "                    \"opacity\": 1,\n",
       "                    \"curveness\": 0,\n",
       "                    \"type\": \"solid\"\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    ],\n",
       "    \"title\": [\n",
       "        {\n",
       "            \"show\": true,\n",
       "            \"text\": \"\\u5404\\u6708\\u964d\\u6c34\\u5929\\u6570\\u7edf\\u8ba1\",\n",
       "            \"target\": \"blank\",\n",
       "            \"subtarget\": \"blank\",\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10,\n",
       "            \"textAlign\": \"auto\",\n",
       "            \"textVerticalAlign\": \"auto\",\n",
       "            \"triggerEvent\": false\n",
       "        }\n",
       "    ]\n",
       "};\n",
       "                chart_910b237ba34946eeb4f9a35b8dcf5b87.setOption(option_910b237ba34946eeb4f9a35b8dcf5b87);\n",
       "        });\n",
       "    </script>\n"
      ],
      "text/plain": [
       "<pyecharts.render.display.HTML at 0x7faba25e1978>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 按月份统计降雨和没有降雨的天数\n",
    "\n",
    "result['是否降水'] = result['天气状况'].apply(lambda x:'未降水' if x in ['晴','多云','阴','雾','浮尘','霾','扬沙'] else '降水')\n",
    "rain = result.groupby([result['日期'].apply(lambda x:x.month),'是否降水'])['是否降水'].count()\n",
    "\n",
    "month = [str(i)+\"月份\" for i in range(1,13)]\n",
    "is_rain = [int(rain[i]['降水']) if '降水' in rain[i].index else 0 for i in range(1,13)]\n",
    "no_rain = [int(rain[i]['未降水']) if '未降水' in rain[i].index else 0  for i in range(1,13)]\n",
    "\n",
    "line = (Line()\n",
    "    .add_xaxis(month)\n",
    "    .add_yaxis('降水天数', is_rain)\n",
    "    .add_yaxis('未降水天数', no_rain)\n",
    "    .set_global_opts(title_opts=opts.TitleOpts(title='各月降水天数统计'))\n",
    ")\n",
    "line.render_notebook()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:53:00.221181Z",
     "start_time": "2019-02-27T13:52:59.731466Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='日期'>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 按照月份查看最高、最低、平均温度的走势\n",
    "result.groupby(result['日期'].apply(lambda x:x.month)).mean().plot(kind='line')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-02-27T13:52:54.191915Z",
     "start_time": "2019-02-27T13:52:54.175946Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<script>\n",
       "    require.config({\n",
       "        paths: {\n",
       "            'echarts':'https://assets.pyecharts.org/assets/v5/echarts.min'\n",
       "        }\n",
       "    });\n",
       "</script>\n",
       "\n",
       "        <div id=\"c12a4677f55946e4b5cd46da68d230f2\" style=\"width:900px; height:500px;\"></div>\n",
       "\n",
       "<script>\n",
       "        require(['echarts'], function(echarts) {\n",
       "                var chart_c12a4677f55946e4b5cd46da68d230f2 = echarts.init(\n",
       "                    document.getElementById('c12a4677f55946e4b5cd46da68d230f2'), 'white', {renderer: 'canvas'});\n",
       "                var option_c12a4677f55946e4b5cd46da68d230f2 = {\n",
       "    \"animation\": true,\n",
       "    \"animationThreshold\": 2000,\n",
       "    \"animationDuration\": 1000,\n",
       "    \"animationEasing\": \"cubicOut\",\n",
       "    \"animationDelay\": 0,\n",
       "    \"animationDurationUpdate\": 300,\n",
       "    \"animationEasingUpdate\": \"cubicOut\",\n",
       "    \"animationDelayUpdate\": 0,\n",
       "    \"aria\": {\n",
       "        \"enabled\": false\n",
       "    },\n",
       "    \"color\": [\n",
       "        \"#5470c6\",\n",
       "        \"#91cc75\",\n",
       "        \"#fac858\",\n",
       "        \"#ee6666\",\n",
       "        \"#73c0de\",\n",
       "        \"#3ba272\",\n",
       "        \"#fc8452\",\n",
       "        \"#9a60b4\",\n",
       "        \"#ea7ccc\"\n",
       "    ],\n",
       "    \"series\": [\n",
       "        {\n",
       "            \"type\": \"radar\",\n",
       "            \"name\": \"\\u98ce\\u5411\\u5929\\u6570\",\n",
       "            \"data\": [\n",
       "                [\n",
       "                    49,\n",
       "                    60,\n",
       "                    29,\n",
       "                    36,\n",
       "                    64,\n",
       "                    37,\n",
       "                    33,\n",
       "                    45\n",
       "                ]\n",
       "            ],\n",
       "            \"label\": {\n",
       "                \"show\": true,\n",
       "                \"margin\": 8\n",
       "            },\n",
       "            \"itemStyle\": {\n",
       "                \"normal\": {}\n",
       "            },\n",
       "            \"lineStyle\": {\n",
       "                \"show\": true,\n",
       "                \"width\": 1,\n",
       "                \"opacity\": 1,\n",
       "                \"curveness\": 0,\n",
       "                \"type\": \"solid\"\n",
       "            },\n",
       "            \"areaStyle\": {\n",
       "                \"opacity\": 0\n",
       "            }\n",
       "        }\n",
       "    ],\n",
       "    \"legend\": [\n",
       "        {\n",
       "            \"data\": [\n",
       "                \"\\u98ce\\u5411\\u5929\\u6570\"\n",
       "            ],\n",
       "            \"selected\": {},\n",
       "            \"show\": true,\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10,\n",
       "            \"itemWidth\": 25,\n",
       "            \"itemHeight\": 14,\n",
       "            \"backgroundColor\": \"transparent\",\n",
       "            \"borderColor\": \"#ccc\",\n",
       "            \"borderWidth\": 1,\n",
       "            \"borderRadius\": 0,\n",
       "            \"pageButtonItemGap\": 5,\n",
       "            \"pageButtonPosition\": \"end\",\n",
       "            \"pageFormatter\": \"{current}/{total}\",\n",
       "            \"pageIconColor\": \"#2f4554\",\n",
       "            \"pageIconInactiveColor\": \"#aaa\",\n",
       "            \"pageIconSize\": 15,\n",
       "            \"animationDurationUpdate\": 800,\n",
       "            \"selector\": false,\n",
       "            \"selectorPosition\": \"auto\",\n",
       "            \"selectorItemGap\": 7,\n",
       "            \"selectorButtonGap\": 10\n",
       "        }\n",
       "    ],\n",
       "    \"tooltip\": {\n",
       "        \"show\": true,\n",
       "        \"trigger\": \"item\",\n",
       "        \"triggerOn\": \"mousemove|click\",\n",
       "        \"axisPointer\": {\n",
       "            \"type\": \"line\"\n",
       "        },\n",
       "        \"showContent\": true,\n",
       "        \"alwaysShowContent\": false,\n",
       "        \"showDelay\": 0,\n",
       "        \"hideDelay\": 100,\n",
       "        \"enterable\": false,\n",
       "        \"confine\": false,\n",
       "        \"appendToBody\": false,\n",
       "        \"transitionDuration\": 0.4,\n",
       "        \"textStyle\": {\n",
       "            \"fontSize\": 14\n",
       "        },\n",
       "        \"borderWidth\": 0,\n",
       "        \"padding\": 5,\n",
       "        \"order\": \"seriesAsc\"\n",
       "    },\n",
       "    \"radar\": [\n",
       "        {\n",
       "            \"indicator\": [\n",
       "                {\n",
       "                    \"name\": \"\\u5317\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u897f\\u5317\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u897f\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u897f\\u5357\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5357\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u4e1c\\u5357\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u4e1c\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u4e1c\\u5317\\u98ce\",\n",
       "                    \"max\": 100\n",
       "                }\n",
       "            ],\n",
       "            \"startAngle\": 90,\n",
       "            \"name\": {\n",
       "                \"textStyle\": {}\n",
       "            },\n",
       "            \"splitLine\": {\n",
       "                \"show\": true,\n",
       "                \"lineStyle\": {\n",
       "                    \"show\": true,\n",
       "                    \"width\": 1,\n",
       "                    \"opacity\": 1,\n",
       "                    \"curveness\": 0,\n",
       "                    \"type\": \"solid\"\n",
       "                }\n",
       "            },\n",
       "            \"splitArea\": {\n",
       "                \"show\": true,\n",
       "                \"areaStyle\": {\n",
       "                    \"opacity\": 0\n",
       "                }\n",
       "            },\n",
       "            \"axisLine\": {\n",
       "                \"show\": true,\n",
       "                \"onZero\": true,\n",
       "                \"onZeroAxisIndex\": 0\n",
       "            }\n",
       "        }\n",
       "    ],\n",
       "    \"title\": [\n",
       "        {\n",
       "            \"show\": true,\n",
       "            \"text\": \"\\u98ce\\u5411\\u7edf\\u8ba1\",\n",
       "            \"target\": \"blank\",\n",
       "            \"subtarget\": \"blank\",\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10,\n",
       "            \"textAlign\": \"auto\",\n",
       "            \"textVerticalAlign\": \"auto\",\n",
       "            \"triggerEvent\": false\n",
       "        }\n",
       "    ]\n",
       "};\n",
       "                chart_c12a4677f55946e4b5cd46da68d230f2.setOption(option_c12a4677f55946e4b5cd46da68d230f2);\n",
       "        });\n",
       "    </script>\n"
      ],
      "text/plain": [
       "<pyecharts.render.display.HTML at 0x7faba2406908>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "directions = ['北风', '西北风', '西风', '西南风', '南风', '东南风', '东风', '东北风']\n",
    "schema = []\n",
    "v = []\n",
    "days = result['风向'].value_counts()\n",
    "for d in directions:\n",
    "    schema.append(opts.RadarIndicatorItem(name=d, max_=100))\n",
    "    v.append(int(days[d]))\n",
    "v = [v]\n",
    "radar=(\n",
    "    Radar()\n",
    "    .add_schema(schema)\n",
    "    .add('风向天数',v)\n",
    "    .set_global_opts(title_opts=opts.TitleOpts(title='风向统计'))\n",
    ")\n",
    "radar.render_notebook()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
